1. Technical Field
The present invention relates generally to processor systems, and more particularly to a patch system for a ROM-based processor to enable bug fixes and functional enhancements.
2. Description of Related Art
Electronic devices, including battery-powered devices and the like, are often implemented using system-on-chip (SOC) designs including a processor chip or integrated circuit (IC) with an embedded processor. Examples of such applications include, but are not limited to, mobile handsets, smart phones, personal digital assistants (PDAs), automotive Telematic systems, point of sale (POS) input devices, remote controls, remote sensors, laptop personal computers, and computer peripheral devices. Exemplary computer peripheral devices include, but are not limited to, PCMCIA cards, CF cards, USB dongles, wireless keyboards, wireless pointing devices, wireless mice, wireless trackballs, game controllers and joysticks. An embedded processor comprises a processor chip or IC incorporating an on-chip processor, which further includes a read-only memory (ROM) and a random access memory (RAM) communicatively coupled together via a processor bus. An internal bus adapter unit or the like may also be provided to provide an interface between the processor bus and an “external” bus on the IC, such as an SOC bus or the like.
In order to reduce power consumption and die area of the processor system or subsystem, it is advantageous to store the processor code in the internal ROM instead of the RAM. In other words, the processor code and/or instructions are already stored on the ROM, and the RAM is used as workspace and to temporarily store data. A significant drawback of such ROM-based processor systems was that, once fabricated, the ROM contents, and therefore, the processor function, could not be changed. The ROM contents were fixed and the ROM itself was embedded and could not be directly accessed or replaced. Such fixed design disabled the ability to provide bug fixes and functional enhancements that would otherwise be considered desirable or necessary from time to time to increase the value and/or lifespan of the electronic device.
Thus, there is a need in the art for a patch system to enable upgrades to ROM-based embedded processor systems and the like.